package com.deyuanyun.pic.pbf.domain;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class DefectMeasureExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public DefectMeasureExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("ID_ is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("ID_ is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(String value) {
            addCriterion("ID_ =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(String value) {
            addCriterion("ID_ <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(String value) {
            addCriterion("ID_ >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(String value) {
            addCriterion("ID_ >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(String value) {
            addCriterion("ID_ <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(String value) {
            addCriterion("ID_ <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLike(String value) {
            addCriterion("ID_ like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotLike(String value) {
            addCriterion("ID_ not like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<String> values) {
            addCriterion("ID_ in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<String> values) {
            addCriterion("ID_ not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(String value1, String value2) {
            addCriterion("ID_ between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(String value1, String value2) {
            addCriterion("ID_ not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andCreateDateIsNull() {
            addCriterion("CREATE_DATE is null");
            return (Criteria) this;
        }

        public Criteria andCreateDateIsNotNull() {
            addCriterion("CREATE_DATE is not null");
            return (Criteria) this;
        }

        public Criteria andCreateDateEqualTo(Date value) {
            addCriterion("CREATE_DATE =", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotEqualTo(Date value) {
            addCriterion("CREATE_DATE <>", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateGreaterThan(Date value) {
            addCriterion("CREATE_DATE >", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateGreaterThanOrEqualTo(Date value) {
            addCriterion("CREATE_DATE >=", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateLessThan(Date value) {
            addCriterion("CREATE_DATE <", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateLessThanOrEqualTo(Date value) {
            addCriterion("CREATE_DATE <=", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateIn(List<Date> values) {
            addCriterion("CREATE_DATE in", values, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotIn(List<Date> values) {
            addCriterion("CREATE_DATE not in", values, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateBetween(Date value1, Date value2) {
            addCriterion("CREATE_DATE between", value1, value2, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotBetween(Date value1, Date value2) {
            addCriterion("CREATE_DATE not between", value1, value2, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateUserIsNull() {
            addCriterion("CREATE_USER is null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIsNotNull() {
            addCriterion("CREATE_USER is not null");
            return (Criteria) this;
        }

        public Criteria andCreateUserEqualTo(String value) {
            addCriterion("CREATE_USER =", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotEqualTo(String value) {
            addCriterion("CREATE_USER <>", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserGreaterThan(String value) {
            addCriterion("CREATE_USER >", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserGreaterThanOrEqualTo(String value) {
            addCriterion("CREATE_USER >=", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLessThan(String value) {
            addCriterion("CREATE_USER <", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLessThanOrEqualTo(String value) {
            addCriterion("CREATE_USER <=", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLike(String value) {
            addCriterion("CREATE_USER like", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotLike(String value) {
            addCriterion("CREATE_USER not like", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserIn(List<String> values) {
            addCriterion("CREATE_USER in", values, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotIn(List<String> values) {
            addCriterion("CREATE_USER not in", values, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserBetween(String value1, String value2) {
            addCriterion("CREATE_USER between", value1, value2, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotBetween(String value1, String value2) {
            addCriterion("CREATE_USER not between", value1, value2, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateRemarkIsNull() {
            addCriterion("CREATE_REMARK is null");
            return (Criteria) this;
        }

        public Criteria andCreateRemarkIsNotNull() {
            addCriterion("CREATE_REMARK is not null");
            return (Criteria) this;
        }

        public Criteria andCreateRemarkEqualTo(String value) {
            addCriterion("CREATE_REMARK =", value, "createRemark");
            return (Criteria) this;
        }

        public Criteria andCreateRemarkNotEqualTo(String value) {
            addCriterion("CREATE_REMARK <>", value, "createRemark");
            return (Criteria) this;
        }

        public Criteria andCreateRemarkGreaterThan(String value) {
            addCriterion("CREATE_REMARK >", value, "createRemark");
            return (Criteria) this;
        }

        public Criteria andCreateRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("CREATE_REMARK >=", value, "createRemark");
            return (Criteria) this;
        }

        public Criteria andCreateRemarkLessThan(String value) {
            addCriterion("CREATE_REMARK <", value, "createRemark");
            return (Criteria) this;
        }

        public Criteria andCreateRemarkLessThanOrEqualTo(String value) {
            addCriterion("CREATE_REMARK <=", value, "createRemark");
            return (Criteria) this;
        }

        public Criteria andCreateRemarkLike(String value) {
            addCriterion("CREATE_REMARK like", value, "createRemark");
            return (Criteria) this;
        }

        public Criteria andCreateRemarkNotLike(String value) {
            addCriterion("CREATE_REMARK not like", value, "createRemark");
            return (Criteria) this;
        }

        public Criteria andCreateRemarkIn(List<String> values) {
            addCriterion("CREATE_REMARK in", values, "createRemark");
            return (Criteria) this;
        }

        public Criteria andCreateRemarkNotIn(List<String> values) {
            addCriterion("CREATE_REMARK not in", values, "createRemark");
            return (Criteria) this;
        }

        public Criteria andCreateRemarkBetween(String value1, String value2) {
            addCriterion("CREATE_REMARK between", value1, value2, "createRemark");
            return (Criteria) this;
        }

        public Criteria andCreateRemarkNotBetween(String value1, String value2) {
            addCriterion("CREATE_REMARK not between", value1, value2, "createRemark");
            return (Criteria) this;
        }

        public Criteria andUpdateDateIsNull() {
            addCriterion("UPDATE_DATE is null");
            return (Criteria) this;
        }

        public Criteria andUpdateDateIsNotNull() {
            addCriterion("UPDATE_DATE is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateDateEqualTo(Date value) {
            addCriterion("UPDATE_DATE =", value, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateNotEqualTo(Date value) {
            addCriterion("UPDATE_DATE <>", value, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateGreaterThan(Date value) {
            addCriterion("UPDATE_DATE >", value, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateGreaterThanOrEqualTo(Date value) {
            addCriterion("UPDATE_DATE >=", value, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateLessThan(Date value) {
            addCriterion("UPDATE_DATE <", value, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateLessThanOrEqualTo(Date value) {
            addCriterion("UPDATE_DATE <=", value, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateIn(List<Date> values) {
            addCriterion("UPDATE_DATE in", values, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateNotIn(List<Date> values) {
            addCriterion("UPDATE_DATE not in", values, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateBetween(Date value1, Date value2) {
            addCriterion("UPDATE_DATE between", value1, value2, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateNotBetween(Date value1, Date value2) {
            addCriterion("UPDATE_DATE not between", value1, value2, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIsNull() {
            addCriterion("UPDATE_USER is null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIsNotNull() {
            addCriterion("UPDATE_USER is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserEqualTo(String value) {
            addCriterion("UPDATE_USER =", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotEqualTo(String value) {
            addCriterion("UPDATE_USER <>", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserGreaterThan(String value) {
            addCriterion("UPDATE_USER >", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserGreaterThanOrEqualTo(String value) {
            addCriterion("UPDATE_USER >=", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserLessThan(String value) {
            addCriterion("UPDATE_USER <", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserLessThanOrEqualTo(String value) {
            addCriterion("UPDATE_USER <=", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserLike(String value) {
            addCriterion("UPDATE_USER like", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotLike(String value) {
            addCriterion("UPDATE_USER not like", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIn(List<String> values) {
            addCriterion("UPDATE_USER in", values, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotIn(List<String> values) {
            addCriterion("UPDATE_USER not in", values, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserBetween(String value1, String value2) {
            addCriterion("UPDATE_USER between", value1, value2, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotBetween(String value1, String value2) {
            addCriterion("UPDATE_USER not between", value1, value2, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateRemarkIsNull() {
            addCriterion("UPDATE_REMARK is null");
            return (Criteria) this;
        }

        public Criteria andUpdateRemarkIsNotNull() {
            addCriterion("UPDATE_REMARK is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateRemarkEqualTo(String value) {
            addCriterion("UPDATE_REMARK =", value, "updateRemark");
            return (Criteria) this;
        }

        public Criteria andUpdateRemarkNotEqualTo(String value) {
            addCriterion("UPDATE_REMARK <>", value, "updateRemark");
            return (Criteria) this;
        }

        public Criteria andUpdateRemarkGreaterThan(String value) {
            addCriterion("UPDATE_REMARK >", value, "updateRemark");
            return (Criteria) this;
        }

        public Criteria andUpdateRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("UPDATE_REMARK >=", value, "updateRemark");
            return (Criteria) this;
        }

        public Criteria andUpdateRemarkLessThan(String value) {
            addCriterion("UPDATE_REMARK <", value, "updateRemark");
            return (Criteria) this;
        }

        public Criteria andUpdateRemarkLessThanOrEqualTo(String value) {
            addCriterion("UPDATE_REMARK <=", value, "updateRemark");
            return (Criteria) this;
        }

        public Criteria andUpdateRemarkLike(String value) {
            addCriterion("UPDATE_REMARK like", value, "updateRemark");
            return (Criteria) this;
        }

        public Criteria andUpdateRemarkNotLike(String value) {
            addCriterion("UPDATE_REMARK not like", value, "updateRemark");
            return (Criteria) this;
        }

        public Criteria andUpdateRemarkIn(List<String> values) {
            addCriterion("UPDATE_REMARK in", values, "updateRemark");
            return (Criteria) this;
        }

        public Criteria andUpdateRemarkNotIn(List<String> values) {
            addCriterion("UPDATE_REMARK not in", values, "updateRemark");
            return (Criteria) this;
        }

        public Criteria andUpdateRemarkBetween(String value1, String value2) {
            addCriterion("UPDATE_REMARK between", value1, value2, "updateRemark");
            return (Criteria) this;
        }

        public Criteria andUpdateRemarkNotBetween(String value1, String value2) {
            addCriterion("UPDATE_REMARK not between", value1, value2, "updateRemark");
            return (Criteria) this;
        }

        public Criteria andDeletedIsNull() {
            addCriterion("DELETED is null");
            return (Criteria) this;
        }

        public Criteria andDeletedIsNotNull() {
            addCriterion("DELETED is not null");
            return (Criteria) this;
        }

        public Criteria andDeletedEqualTo(Short value) {
            addCriterion("DELETED =", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedNotEqualTo(Short value) {
            addCriterion("DELETED <>", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedGreaterThan(Short value) {
            addCriterion("DELETED >", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedGreaterThanOrEqualTo(Short value) {
            addCriterion("DELETED >=", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedLessThan(Short value) {
            addCriterion("DELETED <", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedLessThanOrEqualTo(Short value) {
            addCriterion("DELETED <=", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedIn(List<Short> values) {
            addCriterion("DELETED in", values, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedNotIn(List<Short> values) {
            addCriterion("DELETED not in", values, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedBetween(Short value1, Short value2) {
            addCriterion("DELETED between", value1, value2, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedNotBetween(Short value1, Short value2) {
            addCriterion("DELETED not between", value1, value2, "deleted");
            return (Criteria) this;
        }

        public Criteria andVsersionIsNull() {
            addCriterion("VSERSION is null");
            return (Criteria) this;
        }

        public Criteria andVsersionIsNotNull() {
            addCriterion("VSERSION is not null");
            return (Criteria) this;
        }

        public Criteria andVsersionEqualTo(Short value) {
            addCriterion("VSERSION =", value, "vsersion");
            return (Criteria) this;
        }

        public Criteria andVsersionNotEqualTo(Short value) {
            addCriterion("VSERSION <>", value, "vsersion");
            return (Criteria) this;
        }

        public Criteria andVsersionGreaterThan(Short value) {
            addCriterion("VSERSION >", value, "vsersion");
            return (Criteria) this;
        }

        public Criteria andVsersionGreaterThanOrEqualTo(Short value) {
            addCriterion("VSERSION >=", value, "vsersion");
            return (Criteria) this;
        }

        public Criteria andVsersionLessThan(Short value) {
            addCriterion("VSERSION <", value, "vsersion");
            return (Criteria) this;
        }

        public Criteria andVsersionLessThanOrEqualTo(Short value) {
            addCriterion("VSERSION <=", value, "vsersion");
            return (Criteria) this;
        }

        public Criteria andVsersionIn(List<Short> values) {
            addCriterion("VSERSION in", values, "vsersion");
            return (Criteria) this;
        }

        public Criteria andVsersionNotIn(List<Short> values) {
            addCriterion("VSERSION not in", values, "vsersion");
            return (Criteria) this;
        }

        public Criteria andVsersionBetween(Short value1, Short value2) {
            addCriterion("VSERSION between", value1, value2, "vsersion");
            return (Criteria) this;
        }

        public Criteria andVsersionNotBetween(Short value1, Short value2) {
            addCriterion("VSERSION not between", value1, value2, "vsersion");
            return (Criteria) this;
        }

        public Criteria andTrenchIdIsNull() {
            addCriterion("TRENCH_ID is null");
            return (Criteria) this;
        }

        public Criteria andTrenchIdIsNotNull() {
            addCriterion("TRENCH_ID is not null");
            return (Criteria) this;
        }

        public Criteria andTrenchIdEqualTo(String value) {
            addCriterion("TRENCH_ID =", value, "trenchId");
            return (Criteria) this;
        }

        public Criteria andTrenchIdNotEqualTo(String value) {
            addCriterion("TRENCH_ID <>", value, "trenchId");
            return (Criteria) this;
        }

        public Criteria andTrenchIdGreaterThan(String value) {
            addCriterion("TRENCH_ID >", value, "trenchId");
            return (Criteria) this;
        }

        public Criteria andTrenchIdGreaterThanOrEqualTo(String value) {
            addCriterion("TRENCH_ID >=", value, "trenchId");
            return (Criteria) this;
        }

        public Criteria andTrenchIdLessThan(String value) {
            addCriterion("TRENCH_ID <", value, "trenchId");
            return (Criteria) this;
        }

        public Criteria andTrenchIdLessThanOrEqualTo(String value) {
            addCriterion("TRENCH_ID <=", value, "trenchId");
            return (Criteria) this;
        }

        public Criteria andTrenchIdLike(String value) {
            addCriterion("TRENCH_ID like", value, "trenchId");
            return (Criteria) this;
        }

        public Criteria andTrenchIdNotLike(String value) {
            addCriterion("TRENCH_ID not like", value, "trenchId");
            return (Criteria) this;
        }

        public Criteria andTrenchIdIn(List<String> values) {
            addCriterion("TRENCH_ID in", values, "trenchId");
            return (Criteria) this;
        }

        public Criteria andTrenchIdNotIn(List<String> values) {
            addCriterion("TRENCH_ID not in", values, "trenchId");
            return (Criteria) this;
        }

        public Criteria andTrenchIdBetween(String value1, String value2) {
            addCriterion("TRENCH_ID between", value1, value2, "trenchId");
            return (Criteria) this;
        }

        public Criteria andTrenchIdNotBetween(String value1, String value2) {
            addCriterion("TRENCH_ID not between", value1, value2, "trenchId");
            return (Criteria) this;
        }

        public Criteria andDefectInfoIdIsNull() {
            addCriterion("DEFECT_INFO_ID is null");
            return (Criteria) this;
        }

        public Criteria andDefectInfoIdIsNotNull() {
            addCriterion("DEFECT_INFO_ID is not null");
            return (Criteria) this;
        }

        public Criteria andDefectInfoIdEqualTo(String value) {
            addCriterion("DEFECT_INFO_ID =", value, "defectInfoId");
            return (Criteria) this;
        }

        public Criteria andDefectInfoIdNotEqualTo(String value) {
            addCriterion("DEFECT_INFO_ID <>", value, "defectInfoId");
            return (Criteria) this;
        }

        public Criteria andDefectInfoIdGreaterThan(String value) {
            addCriterion("DEFECT_INFO_ID >", value, "defectInfoId");
            return (Criteria) this;
        }

        public Criteria andDefectInfoIdGreaterThanOrEqualTo(String value) {
            addCriterion("DEFECT_INFO_ID >=", value, "defectInfoId");
            return (Criteria) this;
        }

        public Criteria andDefectInfoIdLessThan(String value) {
            addCriterion("DEFECT_INFO_ID <", value, "defectInfoId");
            return (Criteria) this;
        }

        public Criteria andDefectInfoIdLessThanOrEqualTo(String value) {
            addCriterion("DEFECT_INFO_ID <=", value, "defectInfoId");
            return (Criteria) this;
        }

        public Criteria andDefectInfoIdLike(String value) {
            addCriterion("DEFECT_INFO_ID like", value, "defectInfoId");
            return (Criteria) this;
        }

        public Criteria andDefectInfoIdNotLike(String value) {
            addCriterion("DEFECT_INFO_ID not like", value, "defectInfoId");
            return (Criteria) this;
        }

        public Criteria andDefectInfoIdIn(List<String> values) {
            addCriterion("DEFECT_INFO_ID in", values, "defectInfoId");
            return (Criteria) this;
        }

        public Criteria andDefectInfoIdNotIn(List<String> values) {
            addCriterion("DEFECT_INFO_ID not in", values, "defectInfoId");
            return (Criteria) this;
        }

        public Criteria andDefectInfoIdBetween(String value1, String value2) {
            addCriterion("DEFECT_INFO_ID between", value1, value2, "defectInfoId");
            return (Criteria) this;
        }

        public Criteria andDefectInfoIdNotBetween(String value1, String value2) {
            addCriterion("DEFECT_INFO_ID not between", value1, value2, "defectInfoId");
            return (Criteria) this;
        }

        public Criteria andFeatureTypeIsNull() {
            addCriterion("FEATURE_TYPE is null");
            return (Criteria) this;
        }

        public Criteria andFeatureTypeIsNotNull() {
            addCriterion("FEATURE_TYPE is not null");
            return (Criteria) this;
        }

        public Criteria andFeatureTypeEqualTo(String value) {
            addCriterion("FEATURE_TYPE =", value, "featureType");
            return (Criteria) this;
        }

        public Criteria andFeatureTypeNotEqualTo(String value) {
            addCriterion("FEATURE_TYPE <>", value, "featureType");
            return (Criteria) this;
        }

        public Criteria andFeatureTypeGreaterThan(String value) {
            addCriterion("FEATURE_TYPE >", value, "featureType");
            return (Criteria) this;
        }

        public Criteria andFeatureTypeGreaterThanOrEqualTo(String value) {
            addCriterion("FEATURE_TYPE >=", value, "featureType");
            return (Criteria) this;
        }

        public Criteria andFeatureTypeLessThan(String value) {
            addCriterion("FEATURE_TYPE <", value, "featureType");
            return (Criteria) this;
        }

        public Criteria andFeatureTypeLessThanOrEqualTo(String value) {
            addCriterion("FEATURE_TYPE <=", value, "featureType");
            return (Criteria) this;
        }

        public Criteria andFeatureTypeLike(String value) {
            addCriterion("FEATURE_TYPE like", value, "featureType");
            return (Criteria) this;
        }

        public Criteria andFeatureTypeNotLike(String value) {
            addCriterion("FEATURE_TYPE not like", value, "featureType");
            return (Criteria) this;
        }

        public Criteria andFeatureTypeIn(List<String> values) {
            addCriterion("FEATURE_TYPE in", values, "featureType");
            return (Criteria) this;
        }

        public Criteria andFeatureTypeNotIn(List<String> values) {
            addCriterion("FEATURE_TYPE not in", values, "featureType");
            return (Criteria) this;
        }

        public Criteria andFeatureTypeBetween(String value1, String value2) {
            addCriterion("FEATURE_TYPE between", value1, value2, "featureType");
            return (Criteria) this;
        }

        public Criteria andFeatureTypeNotBetween(String value1, String value2) {
            addCriterion("FEATURE_TYPE not between", value1, value2, "featureType");
            return (Criteria) this;
        }

        public Criteria andFeatureSubtypeIsNull() {
            addCriterion("FEATURE_SUBTYPE is null");
            return (Criteria) this;
        }

        public Criteria andFeatureSubtypeIsNotNull() {
            addCriterion("FEATURE_SUBTYPE is not null");
            return (Criteria) this;
        }

        public Criteria andFeatureSubtypeEqualTo(String value) {
            addCriterion("FEATURE_SUBTYPE =", value, "featureSubtype");
            return (Criteria) this;
        }

        public Criteria andFeatureSubtypeNotEqualTo(String value) {
            addCriterion("FEATURE_SUBTYPE <>", value, "featureSubtype");
            return (Criteria) this;
        }

        public Criteria andFeatureSubtypeGreaterThan(String value) {
            addCriterion("FEATURE_SUBTYPE >", value, "featureSubtype");
            return (Criteria) this;
        }

        public Criteria andFeatureSubtypeGreaterThanOrEqualTo(String value) {
            addCriterion("FEATURE_SUBTYPE >=", value, "featureSubtype");
            return (Criteria) this;
        }

        public Criteria andFeatureSubtypeLessThan(String value) {
            addCriterion("FEATURE_SUBTYPE <", value, "featureSubtype");
            return (Criteria) this;
        }

        public Criteria andFeatureSubtypeLessThanOrEqualTo(String value) {
            addCriterion("FEATURE_SUBTYPE <=", value, "featureSubtype");
            return (Criteria) this;
        }

        public Criteria andFeatureSubtypeLike(String value) {
            addCriterion("FEATURE_SUBTYPE like", value, "featureSubtype");
            return (Criteria) this;
        }

        public Criteria andFeatureSubtypeNotLike(String value) {
            addCriterion("FEATURE_SUBTYPE not like", value, "featureSubtype");
            return (Criteria) this;
        }

        public Criteria andFeatureSubtypeIn(List<String> values) {
            addCriterion("FEATURE_SUBTYPE in", values, "featureSubtype");
            return (Criteria) this;
        }

        public Criteria andFeatureSubtypeNotIn(List<String> values) {
            addCriterion("FEATURE_SUBTYPE not in", values, "featureSubtype");
            return (Criteria) this;
        }

        public Criteria andFeatureSubtypeBetween(String value1, String value2) {
            addCriterion("FEATURE_SUBTYPE between", value1, value2, "featureSubtype");
            return (Criteria) this;
        }

        public Criteria andFeatureSubtypeNotBetween(String value1, String value2) {
            addCriterion("FEATURE_SUBTYPE not between", value1, value2, "featureSubtype");
            return (Criteria) this;
        }

        public Criteria andActualFeaturetypeIsNull() {
            addCriterion("ACTUAL_FEATURETYPE is null");
            return (Criteria) this;
        }

        public Criteria andActualFeaturetypeIsNotNull() {
            addCriterion("ACTUAL_FEATURETYPE is not null");
            return (Criteria) this;
        }

        public Criteria andActualFeaturetypeEqualTo(String value) {
            addCriterion("ACTUAL_FEATURETYPE =", value, "actualFeaturetype");
            return (Criteria) this;
        }

        public Criteria andActualFeaturetypeNotEqualTo(String value) {
            addCriterion("ACTUAL_FEATURETYPE <>", value, "actualFeaturetype");
            return (Criteria) this;
        }

        public Criteria andActualFeaturetypeGreaterThan(String value) {
            addCriterion("ACTUAL_FEATURETYPE >", value, "actualFeaturetype");
            return (Criteria) this;
        }

        public Criteria andActualFeaturetypeGreaterThanOrEqualTo(String value) {
            addCriterion("ACTUAL_FEATURETYPE >=", value, "actualFeaturetype");
            return (Criteria) this;
        }

        public Criteria andActualFeaturetypeLessThan(String value) {
            addCriterion("ACTUAL_FEATURETYPE <", value, "actualFeaturetype");
            return (Criteria) this;
        }

        public Criteria andActualFeaturetypeLessThanOrEqualTo(String value) {
            addCriterion("ACTUAL_FEATURETYPE <=", value, "actualFeaturetype");
            return (Criteria) this;
        }

        public Criteria andActualFeaturetypeLike(String value) {
            addCriterion("ACTUAL_FEATURETYPE like", value, "actualFeaturetype");
            return (Criteria) this;
        }

        public Criteria andActualFeaturetypeNotLike(String value) {
            addCriterion("ACTUAL_FEATURETYPE not like", value, "actualFeaturetype");
            return (Criteria) this;
        }

        public Criteria andActualFeaturetypeIn(List<String> values) {
            addCriterion("ACTUAL_FEATURETYPE in", values, "actualFeaturetype");
            return (Criteria) this;
        }

        public Criteria andActualFeaturetypeNotIn(List<String> values) {
            addCriterion("ACTUAL_FEATURETYPE not in", values, "actualFeaturetype");
            return (Criteria) this;
        }

        public Criteria andActualFeaturetypeBetween(String value1, String value2) {
            addCriterion("ACTUAL_FEATURETYPE between", value1, value2, "actualFeaturetype");
            return (Criteria) this;
        }

        public Criteria andActualFeaturetypeNotBetween(String value1, String value2) {
            addCriterion("ACTUAL_FEATURETYPE not between", value1, value2, "actualFeaturetype");
            return (Criteria) this;
        }

        public Criteria andActualXIsNull() {
            addCriterion("ACTUAL_X is null");
            return (Criteria) this;
        }

        public Criteria andActualXIsNotNull() {
            addCriterion("ACTUAL_X is not null");
            return (Criteria) this;
        }

        public Criteria andActualXEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_X =", value, "actualX");
            return (Criteria) this;
        }

        public Criteria andActualXNotEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_X <>", value, "actualX");
            return (Criteria) this;
        }

        public Criteria andActualXGreaterThan(BigDecimal value) {
            addCriterion("ACTUAL_X >", value, "actualX");
            return (Criteria) this;
        }

        public Criteria andActualXGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_X >=", value, "actualX");
            return (Criteria) this;
        }

        public Criteria andActualXLessThan(BigDecimal value) {
            addCriterion("ACTUAL_X <", value, "actualX");
            return (Criteria) this;
        }

        public Criteria andActualXLessThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_X <=", value, "actualX");
            return (Criteria) this;
        }

        public Criteria andActualXIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_X in", values, "actualX");
            return (Criteria) this;
        }

        public Criteria andActualXNotIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_X not in", values, "actualX");
            return (Criteria) this;
        }

        public Criteria andActualXBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_X between", value1, value2, "actualX");
            return (Criteria) this;
        }

        public Criteria andActualXNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_X not between", value1, value2, "actualX");
            return (Criteria) this;
        }

        public Criteria andActualYIsNull() {
            addCriterion("ACTUAL_Y is null");
            return (Criteria) this;
        }

        public Criteria andActualYIsNotNull() {
            addCriterion("ACTUAL_Y is not null");
            return (Criteria) this;
        }

        public Criteria andActualYEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_Y =", value, "actualY");
            return (Criteria) this;
        }

        public Criteria andActualYNotEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_Y <>", value, "actualY");
            return (Criteria) this;
        }

        public Criteria andActualYGreaterThan(BigDecimal value) {
            addCriterion("ACTUAL_Y >", value, "actualY");
            return (Criteria) this;
        }

        public Criteria andActualYGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_Y >=", value, "actualY");
            return (Criteria) this;
        }

        public Criteria andActualYLessThan(BigDecimal value) {
            addCriterion("ACTUAL_Y <", value, "actualY");
            return (Criteria) this;
        }

        public Criteria andActualYLessThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_Y <=", value, "actualY");
            return (Criteria) this;
        }

        public Criteria andActualYIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_Y in", values, "actualY");
            return (Criteria) this;
        }

        public Criteria andActualYNotIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_Y not in", values, "actualY");
            return (Criteria) this;
        }

        public Criteria andActualYBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_Y between", value1, value2, "actualY");
            return (Criteria) this;
        }

        public Criteria andActualYNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_Y not between", value1, value2, "actualY");
            return (Criteria) this;
        }

        public Criteria andActualZIsNull() {
            addCriterion("ACTUAL_Z is null");
            return (Criteria) this;
        }

        public Criteria andActualZIsNotNull() {
            addCriterion("ACTUAL_Z is not null");
            return (Criteria) this;
        }

        public Criteria andActualZEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_Z =", value, "actualZ");
            return (Criteria) this;
        }

        public Criteria andActualZNotEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_Z <>", value, "actualZ");
            return (Criteria) this;
        }

        public Criteria andActualZGreaterThan(BigDecimal value) {
            addCriterion("ACTUAL_Z >", value, "actualZ");
            return (Criteria) this;
        }

        public Criteria andActualZGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_Z >=", value, "actualZ");
            return (Criteria) this;
        }

        public Criteria andActualZLessThan(BigDecimal value) {
            addCriterion("ACTUAL_Z <", value, "actualZ");
            return (Criteria) this;
        }

        public Criteria andActualZLessThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_Z <=", value, "actualZ");
            return (Criteria) this;
        }

        public Criteria andActualZIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_Z in", values, "actualZ");
            return (Criteria) this;
        }

        public Criteria andActualZNotIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_Z not in", values, "actualZ");
            return (Criteria) this;
        }

        public Criteria andActualZBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_Z between", value1, value2, "actualZ");
            return (Criteria) this;
        }

        public Criteria andActualZNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_Z not between", value1, value2, "actualZ");
            return (Criteria) this;
        }

        public Criteria andActualClockIsNull() {
            addCriterion("ACTUAL_CLOCK is null");
            return (Criteria) this;
        }

        public Criteria andActualClockIsNotNull() {
            addCriterion("ACTUAL_CLOCK is not null");
            return (Criteria) this;
        }

        public Criteria andActualClockEqualTo(String value) {
            addCriterion("ACTUAL_CLOCK =", value, "actualClock");
            return (Criteria) this;
        }

        public Criteria andActualClockNotEqualTo(String value) {
            addCriterion("ACTUAL_CLOCK <>", value, "actualClock");
            return (Criteria) this;
        }

        public Criteria andActualClockGreaterThan(String value) {
            addCriterion("ACTUAL_CLOCK >", value, "actualClock");
            return (Criteria) this;
        }

        public Criteria andActualClockGreaterThanOrEqualTo(String value) {
            addCriterion("ACTUAL_CLOCK >=", value, "actualClock");
            return (Criteria) this;
        }

        public Criteria andActualClockLessThan(String value) {
            addCriterion("ACTUAL_CLOCK <", value, "actualClock");
            return (Criteria) this;
        }

        public Criteria andActualClockLessThanOrEqualTo(String value) {
            addCriterion("ACTUAL_CLOCK <=", value, "actualClock");
            return (Criteria) this;
        }

        public Criteria andActualClockLike(String value) {
            addCriterion("ACTUAL_CLOCK like", value, "actualClock");
            return (Criteria) this;
        }

        public Criteria andActualClockNotLike(String value) {
            addCriterion("ACTUAL_CLOCK not like", value, "actualClock");
            return (Criteria) this;
        }

        public Criteria andActualClockIn(List<String> values) {
            addCriterion("ACTUAL_CLOCK in", values, "actualClock");
            return (Criteria) this;
        }

        public Criteria andActualClockNotIn(List<String> values) {
            addCriterion("ACTUAL_CLOCK not in", values, "actualClock");
            return (Criteria) this;
        }

        public Criteria andActualClockBetween(String value1, String value2) {
            addCriterion("ACTUAL_CLOCK between", value1, value2, "actualClock");
            return (Criteria) this;
        }

        public Criteria andActualClockNotBetween(String value1, String value2) {
            addCriterion("ACTUAL_CLOCK not between", value1, value2, "actualClock");
            return (Criteria) this;
        }

        public Criteria andActualLengthIsNull() {
            addCriterion("ACTUAL_LENGTH is null");
            return (Criteria) this;
        }

        public Criteria andActualLengthIsNotNull() {
            addCriterion("ACTUAL_LENGTH is not null");
            return (Criteria) this;
        }

        public Criteria andActualLengthEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_LENGTH =", value, "actualLength");
            return (Criteria) this;
        }

        public Criteria andActualLengthNotEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_LENGTH <>", value, "actualLength");
            return (Criteria) this;
        }

        public Criteria andActualLengthGreaterThan(BigDecimal value) {
            addCriterion("ACTUAL_LENGTH >", value, "actualLength");
            return (Criteria) this;
        }

        public Criteria andActualLengthGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_LENGTH >=", value, "actualLength");
            return (Criteria) this;
        }

        public Criteria andActualLengthLessThan(BigDecimal value) {
            addCriterion("ACTUAL_LENGTH <", value, "actualLength");
            return (Criteria) this;
        }

        public Criteria andActualLengthLessThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_LENGTH <=", value, "actualLength");
            return (Criteria) this;
        }

        public Criteria andActualLengthIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_LENGTH in", values, "actualLength");
            return (Criteria) this;
        }

        public Criteria andActualLengthNotIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_LENGTH not in", values, "actualLength");
            return (Criteria) this;
        }

        public Criteria andActualLengthBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_LENGTH between", value1, value2, "actualLength");
            return (Criteria) this;
        }

        public Criteria andActualLengthNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_LENGTH not between", value1, value2, "actualLength");
            return (Criteria) this;
        }

        public Criteria andActualWidthIsNull() {
            addCriterion("ACTUAL_WIDTH is null");
            return (Criteria) this;
        }

        public Criteria andActualWidthIsNotNull() {
            addCriterion("ACTUAL_WIDTH is not null");
            return (Criteria) this;
        }

        public Criteria andActualWidthEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_WIDTH =", value, "actualWidth");
            return (Criteria) this;
        }

        public Criteria andActualWidthNotEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_WIDTH <>", value, "actualWidth");
            return (Criteria) this;
        }

        public Criteria andActualWidthGreaterThan(BigDecimal value) {
            addCriterion("ACTUAL_WIDTH >", value, "actualWidth");
            return (Criteria) this;
        }

        public Criteria andActualWidthGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_WIDTH >=", value, "actualWidth");
            return (Criteria) this;
        }

        public Criteria andActualWidthLessThan(BigDecimal value) {
            addCriterion("ACTUAL_WIDTH <", value, "actualWidth");
            return (Criteria) this;
        }

        public Criteria andActualWidthLessThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_WIDTH <=", value, "actualWidth");
            return (Criteria) this;
        }

        public Criteria andActualWidthIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_WIDTH in", values, "actualWidth");
            return (Criteria) this;
        }

        public Criteria andActualWidthNotIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_WIDTH not in", values, "actualWidth");
            return (Criteria) this;
        }

        public Criteria andActualWidthBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_WIDTH between", value1, value2, "actualWidth");
            return (Criteria) this;
        }

        public Criteria andActualWidthNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_WIDTH not between", value1, value2, "actualWidth");
            return (Criteria) this;
        }

        public Criteria andActualDepthIsNull() {
            addCriterion("ACTUAL_DEPTH is null");
            return (Criteria) this;
        }

        public Criteria andActualDepthIsNotNull() {
            addCriterion("ACTUAL_DEPTH is not null");
            return (Criteria) this;
        }

        public Criteria andActualDepthEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_DEPTH =", value, "actualDepth");
            return (Criteria) this;
        }

        public Criteria andActualDepthNotEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_DEPTH <>", value, "actualDepth");
            return (Criteria) this;
        }

        public Criteria andActualDepthGreaterThan(BigDecimal value) {
            addCriterion("ACTUAL_DEPTH >", value, "actualDepth");
            return (Criteria) this;
        }

        public Criteria andActualDepthGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_DEPTH >=", value, "actualDepth");
            return (Criteria) this;
        }

        public Criteria andActualDepthLessThan(BigDecimal value) {
            addCriterion("ACTUAL_DEPTH <", value, "actualDepth");
            return (Criteria) this;
        }

        public Criteria andActualDepthLessThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_DEPTH <=", value, "actualDepth");
            return (Criteria) this;
        }

        public Criteria andActualDepthIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_DEPTH in", values, "actualDepth");
            return (Criteria) this;
        }

        public Criteria andActualDepthNotIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_DEPTH not in", values, "actualDepth");
            return (Criteria) this;
        }

        public Criteria andActualDepthBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_DEPTH between", value1, value2, "actualDepth");
            return (Criteria) this;
        }

        public Criteria andActualDepthNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_DEPTH not between", value1, value2, "actualDepth");
            return (Criteria) this;
        }

        public Criteria andActualMaxdepthIsNull() {
            addCriterion("ACTUAL_MAXDEPTH is null");
            return (Criteria) this;
        }

        public Criteria andActualMaxdepthIsNotNull() {
            addCriterion("ACTUAL_MAXDEPTH is not null");
            return (Criteria) this;
        }

        public Criteria andActualMaxdepthEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_MAXDEPTH =", value, "actualMaxdepth");
            return (Criteria) this;
        }

        public Criteria andActualMaxdepthNotEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_MAXDEPTH <>", value, "actualMaxdepth");
            return (Criteria) this;
        }

        public Criteria andActualMaxdepthGreaterThan(BigDecimal value) {
            addCriterion("ACTUAL_MAXDEPTH >", value, "actualMaxdepth");
            return (Criteria) this;
        }

        public Criteria andActualMaxdepthGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_MAXDEPTH >=", value, "actualMaxdepth");
            return (Criteria) this;
        }

        public Criteria andActualMaxdepthLessThan(BigDecimal value) {
            addCriterion("ACTUAL_MAXDEPTH <", value, "actualMaxdepth");
            return (Criteria) this;
        }

        public Criteria andActualMaxdepthLessThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_MAXDEPTH <=", value, "actualMaxdepth");
            return (Criteria) this;
        }

        public Criteria andActualMaxdepthIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_MAXDEPTH in", values, "actualMaxdepth");
            return (Criteria) this;
        }

        public Criteria andActualMaxdepthNotIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_MAXDEPTH not in", values, "actualMaxdepth");
            return (Criteria) this;
        }

        public Criteria andActualMaxdepthBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_MAXDEPTH between", value1, value2, "actualMaxdepth");
            return (Criteria) this;
        }

        public Criteria andActualMaxdepthNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_MAXDEPTH not between", value1, value2, "actualMaxdepth");
            return (Criteria) this;
        }

        public Criteria andActualDepthPercentIsNull() {
            addCriterion("ACTUAL_DEPTH_PERCENT is null");
            return (Criteria) this;
        }

        public Criteria andActualDepthPercentIsNotNull() {
            addCriterion("ACTUAL_DEPTH_PERCENT is not null");
            return (Criteria) this;
        }

        public Criteria andActualDepthPercentEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_DEPTH_PERCENT =", value, "actualDepthPercent");
            return (Criteria) this;
        }

        public Criteria andActualDepthPercentNotEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_DEPTH_PERCENT <>", value, "actualDepthPercent");
            return (Criteria) this;
        }

        public Criteria andActualDepthPercentGreaterThan(BigDecimal value) {
            addCriterion("ACTUAL_DEPTH_PERCENT >", value, "actualDepthPercent");
            return (Criteria) this;
        }

        public Criteria andActualDepthPercentGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_DEPTH_PERCENT >=", value, "actualDepthPercent");
            return (Criteria) this;
        }

        public Criteria andActualDepthPercentLessThan(BigDecimal value) {
            addCriterion("ACTUAL_DEPTH_PERCENT <", value, "actualDepthPercent");
            return (Criteria) this;
        }

        public Criteria andActualDepthPercentLessThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_DEPTH_PERCENT <=", value, "actualDepthPercent");
            return (Criteria) this;
        }

        public Criteria andActualDepthPercentIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_DEPTH_PERCENT in", values, "actualDepthPercent");
            return (Criteria) this;
        }

        public Criteria andActualDepthPercentNotIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_DEPTH_PERCENT not in", values, "actualDepthPercent");
            return (Criteria) this;
        }

        public Criteria andActualDepthPercentBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_DEPTH_PERCENT between", value1, value2, "actualDepthPercent");
            return (Criteria) this;
        }

        public Criteria andActualDepthPercentNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_DEPTH_PERCENT not between", value1, value2, "actualDepthPercent");
            return (Criteria) this;
        }

        public Criteria andDefectDescriptionIsNull() {
            addCriterion("DEFECT_DESCRIPTION is null");
            return (Criteria) this;
        }

        public Criteria andDefectDescriptionIsNotNull() {
            addCriterion("DEFECT_DESCRIPTION is not null");
            return (Criteria) this;
        }

        public Criteria andDefectDescriptionEqualTo(String value) {
            addCriterion("DEFECT_DESCRIPTION =", value, "defectDescription");
            return (Criteria) this;
        }

        public Criteria andDefectDescriptionNotEqualTo(String value) {
            addCriterion("DEFECT_DESCRIPTION <>", value, "defectDescription");
            return (Criteria) this;
        }

        public Criteria andDefectDescriptionGreaterThan(String value) {
            addCriterion("DEFECT_DESCRIPTION >", value, "defectDescription");
            return (Criteria) this;
        }

        public Criteria andDefectDescriptionGreaterThanOrEqualTo(String value) {
            addCriterion("DEFECT_DESCRIPTION >=", value, "defectDescription");
            return (Criteria) this;
        }

        public Criteria andDefectDescriptionLessThan(String value) {
            addCriterion("DEFECT_DESCRIPTION <", value, "defectDescription");
            return (Criteria) this;
        }

        public Criteria andDefectDescriptionLessThanOrEqualTo(String value) {
            addCriterion("DEFECT_DESCRIPTION <=", value, "defectDescription");
            return (Criteria) this;
        }

        public Criteria andDefectDescriptionLike(String value) {
            addCriterion("DEFECT_DESCRIPTION like", value, "defectDescription");
            return (Criteria) this;
        }

        public Criteria andDefectDescriptionNotLike(String value) {
            addCriterion("DEFECT_DESCRIPTION not like", value, "defectDescription");
            return (Criteria) this;
        }

        public Criteria andDefectDescriptionIn(List<String> values) {
            addCriterion("DEFECT_DESCRIPTION in", values, "defectDescription");
            return (Criteria) this;
        }

        public Criteria andDefectDescriptionNotIn(List<String> values) {
            addCriterion("DEFECT_DESCRIPTION not in", values, "defectDescription");
            return (Criteria) this;
        }

        public Criteria andDefectDescriptionBetween(String value1, String value2) {
            addCriterion("DEFECT_DESCRIPTION between", value1, value2, "defectDescription");
            return (Criteria) this;
        }

        public Criteria andDefectDescriptionNotBetween(String value1, String value2) {
            addCriterion("DEFECT_DESCRIPTION not between", value1, value2, "defectDescription");
            return (Criteria) this;
        }

        public Criteria andNdtReportNumberIsNull() {
            addCriterion("NDT_REPORT_NUMBER is null");
            return (Criteria) this;
        }

        public Criteria andNdtReportNumberIsNotNull() {
            addCriterion("NDT_REPORT_NUMBER is not null");
            return (Criteria) this;
        }

        public Criteria andNdtReportNumberEqualTo(String value) {
            addCriterion("NDT_REPORT_NUMBER =", value, "ndtReportNumber");
            return (Criteria) this;
        }

        public Criteria andNdtReportNumberNotEqualTo(String value) {
            addCriterion("NDT_REPORT_NUMBER <>", value, "ndtReportNumber");
            return (Criteria) this;
        }

        public Criteria andNdtReportNumberGreaterThan(String value) {
            addCriterion("NDT_REPORT_NUMBER >", value, "ndtReportNumber");
            return (Criteria) this;
        }

        public Criteria andNdtReportNumberGreaterThanOrEqualTo(String value) {
            addCriterion("NDT_REPORT_NUMBER >=", value, "ndtReportNumber");
            return (Criteria) this;
        }

        public Criteria andNdtReportNumberLessThan(String value) {
            addCriterion("NDT_REPORT_NUMBER <", value, "ndtReportNumber");
            return (Criteria) this;
        }

        public Criteria andNdtReportNumberLessThanOrEqualTo(String value) {
            addCriterion("NDT_REPORT_NUMBER <=", value, "ndtReportNumber");
            return (Criteria) this;
        }

        public Criteria andNdtReportNumberLike(String value) {
            addCriterion("NDT_REPORT_NUMBER like", value, "ndtReportNumber");
            return (Criteria) this;
        }

        public Criteria andNdtReportNumberNotLike(String value) {
            addCriterion("NDT_REPORT_NUMBER not like", value, "ndtReportNumber");
            return (Criteria) this;
        }

        public Criteria andNdtReportNumberIn(List<String> values) {
            addCriterion("NDT_REPORT_NUMBER in", values, "ndtReportNumber");
            return (Criteria) this;
        }

        public Criteria andNdtReportNumberNotIn(List<String> values) {
            addCriterion("NDT_REPORT_NUMBER not in", values, "ndtReportNumber");
            return (Criteria) this;
        }

        public Criteria andNdtReportNumberBetween(String value1, String value2) {
            addCriterion("NDT_REPORT_NUMBER between", value1, value2, "ndtReportNumber");
            return (Criteria) this;
        }

        public Criteria andNdtReportNumberNotBetween(String value1, String value2) {
            addCriterion("NDT_REPORT_NUMBER not between", value1, value2, "ndtReportNumber");
            return (Criteria) this;
        }

        public Criteria andMaxDeformationIsNull() {
            addCriterion("MAX_DEFORMATION is null");
            return (Criteria) this;
        }

        public Criteria andMaxDeformationIsNotNull() {
            addCriterion("MAX_DEFORMATION is not null");
            return (Criteria) this;
        }

        public Criteria andMaxDeformationEqualTo(BigDecimal value) {
            addCriterion("MAX_DEFORMATION =", value, "maxDeformation");
            return (Criteria) this;
        }

        public Criteria andMaxDeformationNotEqualTo(BigDecimal value) {
            addCriterion("MAX_DEFORMATION <>", value, "maxDeformation");
            return (Criteria) this;
        }

        public Criteria andMaxDeformationGreaterThan(BigDecimal value) {
            addCriterion("MAX_DEFORMATION >", value, "maxDeformation");
            return (Criteria) this;
        }

        public Criteria andMaxDeformationGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("MAX_DEFORMATION >=", value, "maxDeformation");
            return (Criteria) this;
        }

        public Criteria andMaxDeformationLessThan(BigDecimal value) {
            addCriterion("MAX_DEFORMATION <", value, "maxDeformation");
            return (Criteria) this;
        }

        public Criteria andMaxDeformationLessThanOrEqualTo(BigDecimal value) {
            addCriterion("MAX_DEFORMATION <=", value, "maxDeformation");
            return (Criteria) this;
        }

        public Criteria andMaxDeformationIn(List<BigDecimal> values) {
            addCriterion("MAX_DEFORMATION in", values, "maxDeformation");
            return (Criteria) this;
        }

        public Criteria andMaxDeformationNotIn(List<BigDecimal> values) {
            addCriterion("MAX_DEFORMATION not in", values, "maxDeformation");
            return (Criteria) this;
        }

        public Criteria andMaxDeformationBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("MAX_DEFORMATION between", value1, value2, "maxDeformation");
            return (Criteria) this;
        }

        public Criteria andMaxDeformationNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("MAX_DEFORMATION not between", value1, value2, "maxDeformation");
            return (Criteria) this;
        }

        public Criteria andMinDeformationIsNull() {
            addCriterion("MIN_DEFORMATION is null");
            return (Criteria) this;
        }

        public Criteria andMinDeformationIsNotNull() {
            addCriterion("MIN_DEFORMATION is not null");
            return (Criteria) this;
        }

        public Criteria andMinDeformationEqualTo(BigDecimal value) {
            addCriterion("MIN_DEFORMATION =", value, "minDeformation");
            return (Criteria) this;
        }

        public Criteria andMinDeformationNotEqualTo(BigDecimal value) {
            addCriterion("MIN_DEFORMATION <>", value, "minDeformation");
            return (Criteria) this;
        }

        public Criteria andMinDeformationGreaterThan(BigDecimal value) {
            addCriterion("MIN_DEFORMATION >", value, "minDeformation");
            return (Criteria) this;
        }

        public Criteria andMinDeformationGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("MIN_DEFORMATION >=", value, "minDeformation");
            return (Criteria) this;
        }

        public Criteria andMinDeformationLessThan(BigDecimal value) {
            addCriterion("MIN_DEFORMATION <", value, "minDeformation");
            return (Criteria) this;
        }

        public Criteria andMinDeformationLessThanOrEqualTo(BigDecimal value) {
            addCriterion("MIN_DEFORMATION <=", value, "minDeformation");
            return (Criteria) this;
        }

        public Criteria andMinDeformationIn(List<BigDecimal> values) {
            addCriterion("MIN_DEFORMATION in", values, "minDeformation");
            return (Criteria) this;
        }

        public Criteria andMinDeformationNotIn(List<BigDecimal> values) {
            addCriterion("MIN_DEFORMATION not in", values, "minDeformation");
            return (Criteria) this;
        }

        public Criteria andMinDeformationBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("MIN_DEFORMATION between", value1, value2, "minDeformation");
            return (Criteria) this;
        }

        public Criteria andMinDeformationNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("MIN_DEFORMATION not between", value1, value2, "minDeformation");
            return (Criteria) this;
        }

        public Criteria andActualRustClockIsNull() {
            addCriterion("ACTUAL_RUST_CLOCK is null");
            return (Criteria) this;
        }

        public Criteria andActualRustClockIsNotNull() {
            addCriterion("ACTUAL_RUST_CLOCK is not null");
            return (Criteria) this;
        }

        public Criteria andActualRustClockEqualTo(String value) {
            addCriterion("ACTUAL_RUST_CLOCK =", value, "actualRustClock");
            return (Criteria) this;
        }

        public Criteria andActualRustClockNotEqualTo(String value) {
            addCriterion("ACTUAL_RUST_CLOCK <>", value, "actualRustClock");
            return (Criteria) this;
        }

        public Criteria andActualRustClockGreaterThan(String value) {
            addCriterion("ACTUAL_RUST_CLOCK >", value, "actualRustClock");
            return (Criteria) this;
        }

        public Criteria andActualRustClockGreaterThanOrEqualTo(String value) {
            addCriterion("ACTUAL_RUST_CLOCK >=", value, "actualRustClock");
            return (Criteria) this;
        }

        public Criteria andActualRustClockLessThan(String value) {
            addCriterion("ACTUAL_RUST_CLOCK <", value, "actualRustClock");
            return (Criteria) this;
        }

        public Criteria andActualRustClockLessThanOrEqualTo(String value) {
            addCriterion("ACTUAL_RUST_CLOCK <=", value, "actualRustClock");
            return (Criteria) this;
        }

        public Criteria andActualRustClockLike(String value) {
            addCriterion("ACTUAL_RUST_CLOCK like", value, "actualRustClock");
            return (Criteria) this;
        }

        public Criteria andActualRustClockNotLike(String value) {
            addCriterion("ACTUAL_RUST_CLOCK not like", value, "actualRustClock");
            return (Criteria) this;
        }

        public Criteria andActualRustClockIn(List<String> values) {
            addCriterion("ACTUAL_RUST_CLOCK in", values, "actualRustClock");
            return (Criteria) this;
        }

        public Criteria andActualRustClockNotIn(List<String> values) {
            addCriterion("ACTUAL_RUST_CLOCK not in", values, "actualRustClock");
            return (Criteria) this;
        }

        public Criteria andActualRustClockBetween(String value1, String value2) {
            addCriterion("ACTUAL_RUST_CLOCK between", value1, value2, "actualRustClock");
            return (Criteria) this;
        }

        public Criteria andActualRustClockNotBetween(String value1, String value2) {
            addCriterion("ACTUAL_RUST_CLOCK not between", value1, value2, "actualRustClock");
            return (Criteria) this;
        }

        public Criteria andActualRustLengthIsNull() {
            addCriterion("ACTUAL_RUST_LENGTH is null");
            return (Criteria) this;
        }

        public Criteria andActualRustLengthIsNotNull() {
            addCriterion("ACTUAL_RUST_LENGTH is not null");
            return (Criteria) this;
        }

        public Criteria andActualRustLengthEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_RUST_LENGTH =", value, "actualRustLength");
            return (Criteria) this;
        }

        public Criteria andActualRustLengthNotEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_RUST_LENGTH <>", value, "actualRustLength");
            return (Criteria) this;
        }

        public Criteria andActualRustLengthGreaterThan(BigDecimal value) {
            addCriterion("ACTUAL_RUST_LENGTH >", value, "actualRustLength");
            return (Criteria) this;
        }

        public Criteria andActualRustLengthGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_RUST_LENGTH >=", value, "actualRustLength");
            return (Criteria) this;
        }

        public Criteria andActualRustLengthLessThan(BigDecimal value) {
            addCriterion("ACTUAL_RUST_LENGTH <", value, "actualRustLength");
            return (Criteria) this;
        }

        public Criteria andActualRustLengthLessThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_RUST_LENGTH <=", value, "actualRustLength");
            return (Criteria) this;
        }

        public Criteria andActualRustLengthIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_RUST_LENGTH in", values, "actualRustLength");
            return (Criteria) this;
        }

        public Criteria andActualRustLengthNotIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_RUST_LENGTH not in", values, "actualRustLength");
            return (Criteria) this;
        }

        public Criteria andActualRustLengthBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_RUST_LENGTH between", value1, value2, "actualRustLength");
            return (Criteria) this;
        }

        public Criteria andActualRustLengthNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_RUST_LENGTH not between", value1, value2, "actualRustLength");
            return (Criteria) this;
        }

        public Criteria andActualRustWidthIsNull() {
            addCriterion("ACTUAL_RUST_WIDTH is null");
            return (Criteria) this;
        }

        public Criteria andActualRustWidthIsNotNull() {
            addCriterion("ACTUAL_RUST_WIDTH is not null");
            return (Criteria) this;
        }

        public Criteria andActualRustWidthEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_RUST_WIDTH =", value, "actualRustWidth");
            return (Criteria) this;
        }

        public Criteria andActualRustWidthNotEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_RUST_WIDTH <>", value, "actualRustWidth");
            return (Criteria) this;
        }

        public Criteria andActualRustWidthGreaterThan(BigDecimal value) {
            addCriterion("ACTUAL_RUST_WIDTH >", value, "actualRustWidth");
            return (Criteria) this;
        }

        public Criteria andActualRustWidthGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_RUST_WIDTH >=", value, "actualRustWidth");
            return (Criteria) this;
        }

        public Criteria andActualRustWidthLessThan(BigDecimal value) {
            addCriterion("ACTUAL_RUST_WIDTH <", value, "actualRustWidth");
            return (Criteria) this;
        }

        public Criteria andActualRustWidthLessThanOrEqualTo(BigDecimal value) {
            addCriterion("ACTUAL_RUST_WIDTH <=", value, "actualRustWidth");
            return (Criteria) this;
        }

        public Criteria andActualRustWidthIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_RUST_WIDTH in", values, "actualRustWidth");
            return (Criteria) this;
        }

        public Criteria andActualRustWidthNotIn(List<BigDecimal> values) {
            addCriterion("ACTUAL_RUST_WIDTH not in", values, "actualRustWidth");
            return (Criteria) this;
        }

        public Criteria andActualRustWidthBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_RUST_WIDTH between", value1, value2, "actualRustWidth");
            return (Criteria) this;
        }

        public Criteria andActualRustWidthNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ACTUAL_RUST_WIDTH not between", value1, value2, "actualRustWidth");
            return (Criteria) this;
        }

        public Criteria andIsPipeReplacementIsNull() {
            addCriterion("IS_PIPE_REPLACEMENT is null");
            return (Criteria) this;
        }

        public Criteria andIsPipeReplacementIsNotNull() {
            addCriterion("IS_PIPE_REPLACEMENT is not null");
            return (Criteria) this;
        }

        public Criteria andIsPipeReplacementEqualTo(Short value) {
            addCriterion("IS_PIPE_REPLACEMENT =", value, "isPipeReplacement");
            return (Criteria) this;
        }

        public Criteria andIsPipeReplacementNotEqualTo(Short value) {
            addCriterion("IS_PIPE_REPLACEMENT <>", value, "isPipeReplacement");
            return (Criteria) this;
        }

        public Criteria andIsPipeReplacementGreaterThan(Short value) {
            addCriterion("IS_PIPE_REPLACEMENT >", value, "isPipeReplacement");
            return (Criteria) this;
        }

        public Criteria andIsPipeReplacementGreaterThanOrEqualTo(Short value) {
            addCriterion("IS_PIPE_REPLACEMENT >=", value, "isPipeReplacement");
            return (Criteria) this;
        }

        public Criteria andIsPipeReplacementLessThan(Short value) {
            addCriterion("IS_PIPE_REPLACEMENT <", value, "isPipeReplacement");
            return (Criteria) this;
        }

        public Criteria andIsPipeReplacementLessThanOrEqualTo(Short value) {
            addCriterion("IS_PIPE_REPLACEMENT <=", value, "isPipeReplacement");
            return (Criteria) this;
        }

        public Criteria andIsPipeReplacementIn(List<Short> values) {
            addCriterion("IS_PIPE_REPLACEMENT in", values, "isPipeReplacement");
            return (Criteria) this;
        }

        public Criteria andIsPipeReplacementNotIn(List<Short> values) {
            addCriterion("IS_PIPE_REPLACEMENT not in", values, "isPipeReplacement");
            return (Criteria) this;
        }

        public Criteria andIsPipeReplacementBetween(Short value1, Short value2) {
            addCriterion("IS_PIPE_REPLACEMENT between", value1, value2, "isPipeReplacement");
            return (Criteria) this;
        }

        public Criteria andIsPipeReplacementNotBetween(Short value1, Short value2) {
            addCriterion("IS_PIPE_REPLACEMENT not between", value1, value2, "isPipeReplacement");
            return (Criteria) this;
        }

        public Criteria andRecrderIsNull() {
            addCriterion("RECRDER is null");
            return (Criteria) this;
        }

        public Criteria andRecrderIsNotNull() {
            addCriterion("RECRDER is not null");
            return (Criteria) this;
        }

        public Criteria andRecrderEqualTo(String value) {
            addCriterion("RECRDER =", value, "recrder");
            return (Criteria) this;
        }

        public Criteria andRecrderNotEqualTo(String value) {
            addCriterion("RECRDER <>", value, "recrder");
            return (Criteria) this;
        }

        public Criteria andRecrderGreaterThan(String value) {
            addCriterion("RECRDER >", value, "recrder");
            return (Criteria) this;
        }

        public Criteria andRecrderGreaterThanOrEqualTo(String value) {
            addCriterion("RECRDER >=", value, "recrder");
            return (Criteria) this;
        }

        public Criteria andRecrderLessThan(String value) {
            addCriterion("RECRDER <", value, "recrder");
            return (Criteria) this;
        }

        public Criteria andRecrderLessThanOrEqualTo(String value) {
            addCriterion("RECRDER <=", value, "recrder");
            return (Criteria) this;
        }

        public Criteria andRecrderLike(String value) {
            addCriterion("RECRDER like", value, "recrder");
            return (Criteria) this;
        }

        public Criteria andRecrderNotLike(String value) {
            addCriterion("RECRDER not like", value, "recrder");
            return (Criteria) this;
        }

        public Criteria andRecrderIn(List<String> values) {
            addCriterion("RECRDER in", values, "recrder");
            return (Criteria) this;
        }

        public Criteria andRecrderNotIn(List<String> values) {
            addCriterion("RECRDER not in", values, "recrder");
            return (Criteria) this;
        }

        public Criteria andRecrderBetween(String value1, String value2) {
            addCriterion("RECRDER between", value1, value2, "recrder");
            return (Criteria) this;
        }

        public Criteria andRecrderNotBetween(String value1, String value2) {
            addCriterion("RECRDER not between", value1, value2, "recrder");
            return (Criteria) this;
        }

        public Criteria andRecordTimeIsNull() {
            addCriterion("RECORD_TIME is null");
            return (Criteria) this;
        }

        public Criteria andRecordTimeIsNotNull() {
            addCriterion("RECORD_TIME is not null");
            return (Criteria) this;
        }

        public Criteria andRecordTimeEqualTo(Date value) {
            addCriterion("RECORD_TIME =", value, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRecordTimeNotEqualTo(Date value) {
            addCriterion("RECORD_TIME <>", value, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRecordTimeGreaterThan(Date value) {
            addCriterion("RECORD_TIME >", value, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRecordTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("RECORD_TIME >=", value, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRecordTimeLessThan(Date value) {
            addCriterion("RECORD_TIME <", value, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRecordTimeLessThanOrEqualTo(Date value) {
            addCriterion("RECORD_TIME <=", value, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRecordTimeIn(List<Date> values) {
            addCriterion("RECORD_TIME in", values, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRecordTimeNotIn(List<Date> values) {
            addCriterion("RECORD_TIME not in", values, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRecordTimeBetween(Date value1, Date value2) {
            addCriterion("RECORD_TIME between", value1, value2, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRecordTimeNotBetween(Date value1, Date value2) {
            addCriterion("RECORD_TIME not between", value1, value2, "recordTime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}